
package com.sausageking.client.consumer.ui;

import java.util.List;

import com.google.gwt.user.client.ui.IsWidget;
import com.sausageking.shared.Checkin;
import com.sausageking.shared.Offer;

public interface DealView extends IsWidget {

  DealView setOffer(Offer offer);

  // show/hide "get stamped" button and "num stamps" panel
  DealView setStampable(boolean stampable);

  // show/hide "redeem" button
  DealView setRedeemable(boolean redeemable);

  // show/hide "you have xx minutes yy seconds to redeem"
  DealView setRedeeming(boolean redeeming);

  DealView setRedemptionCode(String redemptionCode);

  DealView setRedemptionExpires(long msToExpire);

  DealView showStamps(List<Checkin> checkins, boolean redeeming,
      boolean redeemable);

  interface Presenter {

    void startStampDialog();

    void startRedeemDialog();
  }
}
